Page({
  onLoad() {
    // 页面一加载 获取本地数据 更新页面
    this.setData({
      userInfo: wx.getStorageSync('userInfo'),
    })
  },

  getNickName(ev) {
    // console.log(ev.detail.value)

    // 请求接口更新 昵称 ev.detail.value
    this.updateNickName(ev.detail.value)
  },

  async updateNickName(nickName) {
    const { code } = await wx.http.put('/userInfo', { nickName })
    // console.log(res)

    if (code !== 10000) return wx.utils.toast('用户昵称更新失败')

    // 用户昵称更新成功  存数据用于页面展示
    this.setData({
      'userInfo.nickName': nickName,
    })
  },

  getUserAvatar(ev) {
    console.log(ev.detail.avatarUrl) // 用户选择的头像url => 临时的图片地址

    // 会将这张头像 上传到 自己的服务器
    // 发请求 wechat-http 封装了wx.request

    // 小程序中发请求获取数据    wx.request
    // 小程序中上传图片         wx.uploadFile

    wx.uploadFile({
      url: wx.http.baseURL + '/upload', // 服务器地址
      // file: ev.detail.avatarUrl
      filePath: ev.detail.avatarUrl, // 上传的文件路径
      name: 'file', // 后端指定的key 键
      header: {
        Authorization: getApp().token,
      }, // 请求头
      formData: {
        type: 'avatar',
      }, // 设置其他的参数

      success: ({ data }) => {
        // console.log(res)

        const { code, data: imageData } = JSON.parse(data)
        // console.log(res)

        if (code !== 10000) return wx.utils.toast('更新头像失败')

        // 存储真真正的图片地址
        this.setData({ 'userInfo.avatar': imageData.url })
      },
    })
  },
})
